/**
 * 主菜单
 */

/**
 * 单机练习按钮回调
 */
function practice() {
  go.game.state.start('practice')
}

/**
 * 好友对战按钮回调
 */
function battle() {
  if (!go.server.socket.connected) return
  go.server.createRoom((roomId) => {
    // 创建房间成功，准备游戏
    go.server.ready()

    // 发出带有房间 ID 的邀请消息
    wx.shareAppMessage({
      title: '让我们来一场紧张刺激而又健康益智的井字大作战吧！',
      imageUrl: 'images/share.png',
      query: `roomId=${roomId}`
    })

    // 跳转等待对手场景
    go.game.state.start('waiting')
  })
}

/**
 * 排行榜按钮回调
 */
function rank() {
  go.game.state.start('rank')
}

/**
 * 添加主菜单
 */
function addMenu() {
  [
    // x    y     按钮文本    回调函数
    [  248, 750,  "单机练习", practice],
    [  248, 900,  "好友约战", battle],
    [  248, 1050, "好友排行", rank],
  ].map((btnConfig) => {
    // 调用 common 中的 addBtn 函数创建按钮
    go.common.addBtn({
      x: btnConfig[0],
      y: btnConfig[1],
      text: btnConfig[2],
      callback: btnConfig[3],
    })
  })
}

class Menu extends Phaser.State {
  create(){
    this.add.image(0,0,'bg_menu')
    addMenu()
  }

}

module.exports = Menu
